package com.igelato.controller.OrderGoods;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;


@Data
public class OrderGoodsSearchDto implements Serializable {

    @ApiModelProperty("页码")
    Integer page_num = 1;

    @ApiModelProperty("每页多少条数据")
    Integer page_size = 10;

    private Long id;

    @ApiModelProperty("订单号，对应微信的out_trade_no")
    private String trade_id;

    @ApiModelProperty("微信支付系统生成的订单号")
    private String transaction_id;

    @ApiModelProperty("1: 余额；2：微信；3：支付宝；")
    private Integer pay_type;

    @ApiModelProperty("支付金额，单位：分")
    private Integer pay_money;

    @ApiModelProperty("取餐码（未支付时没有取餐码，所以值可以为空）")
    private String get_goods_code;

    @ApiModelProperty("1：堂食；2：带走；3：外卖；")
    private Integer eat_type;

    @ApiModelProperty("1: 未支付； 2： 已支付； 3：已接单；4：制作完成；5：已取走； -1：申请退款；-2：已沟通；-3：申请退款成功；-4：已完成退款；-9：拒绝退款；-99：已删除；")
    private Integer status;

    private Integer user_id;

    @ApiModelProperty("支付信息")
    private String pay_info;

    @ApiModelProperty("退款信息")
    private String refund_info;

    private String goods_list;

    @ApiModelProperty("所有商品的总数量")
    private Integer goods_total_count;

    @ApiModelProperty("用户下单时所在的位置")
    private Double user_latitude;

    @ApiModelProperty("用户下单时所在的位置")
    private Double user_longitude;

    private Integer shop_id;

    private String shop_name;

    private String shop_address;

    private Integer coupon_id;

    private Integer coupon_money;

    @ApiModelProperty("这次订单使用了多少积分")
    private Integer use_points;

    @ApiModelProperty("用户支付的时间")
    private LocalDateTime pay_time;

    @ApiModelProperty("用户支付成功时间")
    private LocalDateTime pay_success_time;

    @ApiModelProperty("申请退款时间")
    private LocalDateTime apply_refund_time;

    @ApiModelProperty("退款成功时间")
    private LocalDateTime refund_success_time;

    @ApiModelProperty("预计取餐时间（值为null则表示立即取餐）")
    private LocalDateTime get_goods_time;

    @ApiModelProperty("真正取餐时间")
    private LocalDateTime take_away_goods_time;

    private LocalDateTime from_date;

    private LocalDateTime to_date;
}
